iT邦幫忙

2021 iThome 鐵人賽

DAY 12
0
Software Development

C# 入门系列 第 12

C#入门之列表

  • 分享至 

  • xImage
  •  

今天我们将看一下 C# 中的另外一种数据类型:列表。

首先,我们先来看一下列表:
列表和数组有点类似,都是用来表示一组数据。但数组是内存中连续存储的,所以对数组进行查询时非常快,但在数组中插入数据非常麻烦,这个时候,我们就需要使用 list。

下面我们先看一下示例:

using System;
using System.Collections.Generic;    // List 属于 System.Collections.Generic,所以要添加该行

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> names = new List<string>();   // 创建一个名为 names 的空列表
            names.Add("Tom");                         // 向列表中添加元素
            names.Add("Jerry");
            foreach (string name in names)            // 遍历列表内容
            {
                Console.WriteLine($"{name}");         // 输出遍历的结果
            }
        }
    }
}

运行结果:
https://ithelp.ithome.com.tw/upload/images/20210912/20099494nGnIwGGVbo.png

前面我们讲了添加数据到 list,以及列表的遍历,下面我们来看看 list 的 其他操作:

using System;
using System.Collections.Generic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> names = new List<string> { "Tom", "Jerry", "Sam" };
            foreach (string name in names)
            {
                Console.Write($"{name + " "}");
            }
            Console.Write("\n");
            names.Add("Jack");
            foreach (string name in names)
            {
                Console.Write($"{name + " "}");
            }
            Console.Write("\n");
            Console.WriteLine(names.IndexOf("Tom"));    // 该元素的索引号
            Console.WriteLine(names[1]);         // 通过索引号获取元素
            names.Insert(1, "Aaron");        // 在该索引号位置插入元素
            foreach (string name in names)
            {
                Console.Write($"{name + " "}");
            }
        }
    }
}

运行结果:
https://ithelp.ithome.com.tw/upload/images/20210912/20099494Saw0nmdUEl.png

通过结果,我们可以看到,通过 add() 的元素,始终被添加到 list 的最后面,当在指定的位置添加元素时,我们需要使用 nsert() 来插入元素。

元素的索引号,是从 0 开始的,第一个元素的索引为 0,依次类推;也可以从最后一个开始,索引号为 -1。


上一篇
C#入门之错误处理
下一篇
C# 入门之字典
系列文
C# 入门32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言